//
// Copyright (c) Microsoft Corporation.  All rights reserved.
//
//
// Use of this sample source code is subject to the terms of the Microsoft
// license agreement under which you licensed this sample source code. If
// you did not accept the terms of the license agreement, you are not
// authorized to use this sample source code. For the terms of the license,
// please see the license agreement between you and Microsoft or, if applicable,
// see the LICENSE.RTF on your install media or the root of your tools installation.
// THE SAMPLE SOURCE CODE IS PROVIDED "AS IS", WITH NO WARRANTIES OR INDEMNITIES.
//


// TODO: REMOVE THIS AFTER WHIDBEY FIXES THIS BUG
#pragma comment(linker, "/nodefaultlib:oldnames.lib")

#pragma once

///////////////////////////////////////////////////////////////////////////////
// Windows Core
#include <windows.h>
#include <objbase.h>
#include <Ocidl.h>


///////////////////////////////////////////////////////////////////////////////
// Windows Mobile
#include <shlguid.h>
#include <shlobj.h>
#include <COGUID.H>
#include <aygshell.h>
#include <winuserm.h>

///////////////////////////////////////////////////////////////////////////////
// Menu Extension definitions - ItemRefArray, ItemRef, CFNAME_ITEMREFARRAY
#include <appext.h>         


///////////////////////////////////////////////////////////////////////////////
// The following defines are used by some of the .H files refered to by CEMAPI.H
// to determine which items are included and which are not
#define USES_IID_IMessage
#define USES_IID_IMAPIProp
#define USES_IID_IMAPIFolder
#define USES_IID_IMAPIContainer
#define USES_IID_IMAPIAdviseSink

///////////////////////////////////////////////////////////////////////////////
//CEMAPI GUIDS - ITI_FolderItemRef, ITI_MessageItemRef, ITI_StoreItemRef, 
//               ITI_MessageFormExItemRef, etc... 
//CEMAPI Error Codes, and constatnts, etc.. 
#include <CEMAPI.h>

// {DE371DA0-2B35-4033-B4BA-4563307987C1}
DEFINE_GUID(CLSID_TASKS_CONTEXT_MENUEXT, 0xde371da0, 0x2b35, 0x4033, 0xb4, 0xba, 0x45, 0x63, 0x30, 0x79, 0x87, 0xc1);
#define CLSIDTEXT_TASKS_CONTEXT_MENUEXT TEXT("DE371DA0-2B35-4033-B4BA-4563307987C1")

// NOTE:  guids for IID_IObjectWithSite and IID_IDataObject come from uuid.lib

// A string representing this DLL.  
// If you change the name of the DLL - change this string 
#define IMAGENAME TEXT("IntroTasksExtension.dll")


// Used to help us determine if we are a Context or Softkey Menu Ext
typedef enum {
    Context,
    Softkey,
} ExtensionType;


///////////////////////////////////////////////////////////////////////////////
// local project header files
#include "Macros.h"
#include "TasksMenuExt.h"
#include "ClassFactory.h"


